#include <iostream>
#include <string>
#include <functional>
#include "MyLog.hpp"

using namespace MyLog;
// 任务形式2
using Task_2 = std::function<void()>; // 返回值void，参数为空的函数类型
void Flush()
{
    LOG(LogLevel::DEBUG) << "我是一个刷新的任务";
}

// 任务形式1
class Task_1
{
public:
    Task_1(int a, int b) : _a(a), _b(b), _result(0)
    {
    }
    void Excute()
    {
        _result = _a + _b;
    }
    std::string ResultToString()
    {
        return std::to_string(_a) + "+" + std::to_string(_b) + "=" +
               std::to_string(_result);
    }
    std::string DebugToString()
    {
        return std::to_string(_a) + "+" + std::to_string(_b) + "=?";
    }

private:
    int _a;
    int _b;
    int _result;
};